Travaux
préliminaires :
Le travail est à réaliser sous Oracle ou
MySql.
- Démarrer Oracle. Auparavant démarrer le
service si nécessaire.
- Se connecter avec le nom d’utilisateur scott
et le mot de passe tiger
Ou
- Démarrer PhpMyAdmin (version MySql)
1ERE PARTIE :
CAS EMPLOYES
Ecrire et exécuter les
requêtes ci-dessous :
1)
Obtenir les départements (numéro, nom) ayant des employés.
2)
Donner la liste des employés (numéro, nom) non vendeurs.
3)
Donner les employés embauchés entre le 01-01-1981 et le
30-06-81.
4)
Donner le salaire le plus élevé et le salaire le plus bas par
département et job.
5)
Donner pour chaque département : son nom, le nombre d’employés et
la moyenne des salaires.
6)
Donner le montant total des commissions des vendeurs.
7)
Donner pour chaque employé : son nom, sa fonction et le nom de son
département. Le résultat devra être ordonné sur le nom de
l'employé.
8)
Donner le nom et le job de la dernière personne embauchée dans le
département ‘ACCOUNTING’.
9)
Lister les employés (no, nom) dont le salaire est supérieur à la
moyenne des salaires.
10) Donner
le nombre d’employés n’ayant pas de responsable.
11) Donner
la liste des employés (numéro, nom et job) avec le nom de leur
responsable.
12) On peut
constater que le chef ne figure pas dans la liste de la question
précédente (c'est logique car il n'a pas de responsable), il est
demandé de l'ajouter dans cette liste (penser à UNION).
13) Donner
la liste des employés dont le nom commence par A.
14)
Donner la liste des employés (numéro, nom) avec leur salaire
total ordonnée sur le nom de l'employé ; attention si on
ajoute NULL à un nombre, le résultat vaut NULL.
15)
Augmenter les salaires des vendeurs de 1%.
16) Insérer
un département (la seule contrainte est que le numéro doit être
égal au dernier + 10).
Le café "Au père tranquille" veut disposer
d’une base de données relationnelle sous Oracle.
Le modèle "physique" des données (MPD) sous
AMC Designor se présente ainsi :
Le contenu des différentes tables figure en
annexe 2.
TRAVAIL A REALISER
Création des tables
:
Alimentation des tables
:
Ecrire et exécuter les
requêtes ci-dessous :
1) Ajouter un attribut commentaire, d'une
longueur de 80, dans la table des serveurs.
2) Ajouter la contrainte "quantité facturée
obligatoirement positive" dans la table des lignes de facture.
3) Dans la table des serveurs, faire passer la
longueur de la ville à 35 caractères.
VOICI LE CONTENU
(FICTIF) DES DIFFERENTES TABLES :
Table des consommations : CONSO
Clé : NumCons
NumCons
|
LibCons
|
PrixCons
|
100
|
Café
|
1.20
€
|
101
|
Café
double
|
2.00
€
|
102
|
Café
crème
|
1.50 €
|
105
|
Chocolat
|
2.00 €
|
106
|
Bière
pression
|
2.50
€
|
107
|
Bière
25cl
|
3.00
€
|
108
|
Bière
33cl
|
4.00
€
|
110
|
Bière
50cl
|
5.00
€
|
120
|
Jus de
fruits
|
2.50
€
|
121
|
Jus de fruit
pressé
|
3.00 €
|
122
|
Perrier
|
2.50 e
|
124
|
Orangina
|
2.40 €
|
130
|
Coca Cola
|
2.40
€
|
NumFact
|
NumTable
|
NumServ
|
DateFact
|
1200
|
1
|
53
|
21/02/2006
|
1201
|
5
|
53
|
21/02/2006
|
1202
|
3
|
52
|
21/02/2006
|
1203
|
5
|
50
|
21/02/2006
|
1204
|
4
|
52
|
22/02/2006
|
1205
|
1
|
53
|
22/02/2006
|
1206
|
3
|
52
|
22/02/2006
|
1207
|
5
|
53
|
22/02/2006
|
NumTable
|
NomTable
|
NbPlaces
|
1
|
entree-gche
|
6
|
2
|
entree-dte
|
10
|
3
|
fenetre1
|
3
|
4
|
fenetre2
|
8
|
5
|
fenetre3
|
4
|
6
|
fond-gche
|
4
|
7
|
fond-drt
|
2
|
NumFact
|
NumCons
|
Qte
|
1200
|
101
|
3
|
1200
|
106
|
1
|
1200
|
120
|
1
|
1201
|
105
|
2
|
1201
|
106
|
2
|
1202
|
100
|
2
|
1202
|
122
|
1
|
1203
|
102
|
1
|
1203
|
108
|
1
|
1203
|
121
|
1
|
1203
|
130
|
1
|
1204
|
122
|
4
|
1204
|
124
|
2
|
1205
|
100
|
2
|
1206
|
108
|
3
|
1207
|
108
|
1
|
1207
|
110
|
2
|
NumServ
|
NomServ
|
RueServ
|
CpServ
|
VilleServ
|
DateNaisss
|
50
|
Pizzi
|
3, rue des
lilas
|
90000
|
BELFORT
|
10/12/1986
|
51
|
Cathy
|
25, av Roosevelt
|
90100
|
DELLE
|
05/06/1985
|
52
|
Totof
|
46, grande
rue
|
90500
|
BAVILLIERS
|
03/09/1986
|
53
|
Pilou
|
5, impasse
Martin
|
90000
|
BELFORT
|
09/08/1986
|